home *** CD-ROM | disk | FTP | other *** search
- /*
-
- */
-
-
- #include "keypad.h"
-
- #include <dos/dos.h>
- #include <stdio.h>
-
- struct IntuitionBase *IntuitionBase;
- struct GfxBase *GfxBase;
- struct GadToolsBase *GadToolsBase;
- struct UtilityBase *UtilityBase;
-
- extern struct Window *Project0Wnd;
- extern struct Gadget *Project0Gadgets[13];
- struct Gadget *G;
-
-
- struct TagItem tlist[2] = { {GTIN_Number,0},{TAG_DONE,0}};
-
- struct TagItem systaglist[2] = { {TAG_DONE,0}};
-
- char buf1[256],buf2[256];
-
- void GetName (char *buf)
- {
- char buffer[256];
- struct Task *t;
-
- t=FindTask(0);
-
- strcpy(buf,t->tc_Node.ln_Name);
- }
-
- int mode=1;
-
- void do_the_thing (int zahl)
- {
- int wert=0;
- tlist[0].ti_Data = (ULONG)&(wert);
-
- GT_GetGadgetAttrsA(G,Project0Wnd,0,(struct TagItem*)&tlist);
-
- if (zahl>=0) /* werte direkt reinmultiplizieren */
- {
- if (wert>999) wert=0;
- wert = (wert*10) + zahl;
- if (wert>999) wert=zahl;
- GT_SetGadgetAttrs(G,Project0Wnd,0,GTIN_Number,wert,TAG_DONE);
- }
- else /* kommando bekommmen */
- {
- switch (zahl)
- {
- case -1: /* EXAMPLE: */
- if (wert<100)
- {
- switch (wert)
- {
- case 1:
- mode=1;
- SystemTagList("requestchoice VisualKeypad \"ASCII Modus aktiviert\" Verstanden",&systaglist);
- break;
- case 2:
- mode=2;
- SystemTagList("requestchoice VisualKeypad \"IFF Bild-Modus aktiviert\" Verstanden",&systaglist);
- break;
- default:
- break;
- }
- }
- else
- {
- GetName(buf1); /* "KEYPAD" */
- if (mode==1)
- sprintf(buf2,"$%s %ld ASCII",buf1,wert); /* "$KEYPAD <NUMMER>" */
- else
- sprintf(buf2,"$%s %ld IFF",buf1,wert); /* "$KEYPAD <NUMMER>" */
- SystemTagList(buf2,&systaglist);
- }
- break;
-
- case -2:GT_SetGadgetAttrs(G,Project0Wnd,0,GTIN_Number,100,TAG_DONE);
- break;
-
- case -3:
- break;
-
- default:
- break;
- }
- }
-
- }
-
- int main()
- {
- IntuitionBase = (struct IntuitionBase*) OpenLibrary("intuition.library",37L);
- GfxBase = (struct GfxBase*) OpenLibrary("graphics.library",37L);
- GadToolsBase = (struct GadToolsBase*) OpenLibrary("gadtools.library",37L);
- UtilityBase = (struct UtilityBase*) OpenLibrary("utility.library",37L);
-
- if( IntuitionBase && UtilityBase && GfxBase && GadToolsBase )
- {
- if(!SetupScreen())
- {
- if(!OpenProject0Window())
- {
- int quit;
-
- G = Project0Gadgets[12];
-
- SystemTagList("requestchoice VisualKeypad \"Copyright © 1994 by Daniel Balster\" \"Daniel ist c00l\"",&systaglist);
-
- do
- {
- Wait( 1L<<Project0Wnd->UserPort->mp_SigBit );
-
- quit = HandleProject0IDCMP();
- do_the_thing(quit);
- }
- while( quit!=-4 );
- }
- CloseProject0Window();
- }
- CloseDownScreen();
- }
-
- if( IntuitionBase ) CloseLibrary( IntuitionBase );
- if( UtilityBase ) CloseLibrary( UtilityBase );
- if( GfxBase ) CloseLibrary( GfxBase );
- if( GadToolsBase ) CloseLibrary( GadToolsBase );
-
- return 0;
- }
-